package com.mzx.javase.io;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

/**
 * 类描述： 文件输出流
 *
 * @ClassName FileOutputStreamTest
 * @Description TODO
 * @Author 马子鑫
 * @Date 2022/7/19 17:40
 * @Version 1.0
 */
public class FileOutputStreamTest {
    public static void main(String[] args) {
        FileOutputStream fos = null;
        try {
            //如果文件存在，清空重新写入(默认覆盖原有内容)；如果文件不存在会自动创建文件
//            fos = new FileOutputStream("fos.txt");
            //保留原有数据，追加写入
            fos = new FileOutputStream("fos.txt",true);//idea默认路径为项目所在根目录
//            fos.write(97);
//            fos.write(98);
//            fos.write(99);
//            fos.write(100);

            //写出一个字节数组
            byte[] bytes = "hello,world!".getBytes();
//            fos.write(bytes);

            //写入一个字符数组，指定区间
            fos.write(bytes,0,5);

            fos.flush();
        } catch (FileNotFoundException e) {
            throw new RuntimeException(e);
        } catch (IOException e) {
            throw new RuntimeException(e);
        } finally {
            if (fos != null) {
                try {
                    fos.close();
                } catch (IOException e) {
                    throw new RuntimeException(e);
                }
            }
        }

    }
}
